Wireless device with an aggregate user interface for controlling other devices

ABSTRACT

An apparatus, device, methods, computer program product, and system are described that make a determination that a wireless device is in proximity to at least one secondary wireless device, and determine an aggregate user interface on the wireless device based on the determination.

SUMMARY

An embodiment provides a method. In one implementation, the methodincludes but is not limited to making a determination that a wirelessdevice is in proximity to at least one secondary wireless device anddetermining an aggregate user interface on the wireless device based onthe determination. In addition to the foregoing, other method aspectsare described in the claims, drawings, and text forming a part of thepresent disclosure.

An embodiment provides a computer program product. In oneimplementation, the computer program product includes but is not limitedto a signal-bearing medium bearing at least one of one or moreinstructions for making a determination that a wireless device is inproximity to at least one secondary wireless device, and the signalbearing medium bearing at least one of one or more instructions fordetermining an aggregate user interface on the wireless device based onthe determination. In addition to the foregoing, other computer programproduct aspects are described in the claims, drawings, and text forminga part of the present disclosure.

An embodiment provides a system. In one implementation, the systemincludes but is not limited to a computing device and instructions. Theinstructions when executed on the computing device cause the computingdevice to make a determination that a wireless device is in proximity toat least one secondary wireless device and determine an aggregate userinterface on the wireless device based on the determination. In additionto the foregoing, other system aspects are described in the claims,drawings, and text forming a part of the present disclosure.

An embodiment provides a device. In one implementation, the deviceincludes but is not limited to a wireless device configured to determinewhen it is in proximity to at least one secondary wireless device, andthe wireless device includes an aggregate user interface configured tobe determined on the wireless device. In addition to the foregoing,other device aspects are described in the claims, drawings, and textforming a part of the present disclosure.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates an example wireless device with an aggregate userinterface in which embodiments may be implemented, perhaps in a device.

FIG. 2 illustrates certain alternative embodiments of the wirelessdevice with an aggregate user interface of FIG. 1.

FIG. 3 illustrates an operational flow representing example operationsrelated to a wireless device with an aggregate user interface forcontrolling other devices.

FIG. 4 illustrates an alternative embodiment of the example operationalflow of FIG. 3.

FIG. 5 illustrates an alternative embodiment of the example operationalflow of FIG. 3.

FIG. 6 illustrates an alternative embodiment of the example operationalflow of FIG. 3.

FIG. 7 illustrates an alternative embodiment of the example operationalflow of FIG. 3.

FIG. 9 illustrates an alternative embodiment of the example operationalflow of FIG. 3.

FIG. 10 illustrates an alternative embodiment of the example operationalflow of FIG. 3.

FIG. 12 illustrates an alternative embodiment of the example operationalflow of FIG. 3.

FIG. 14 illustrates an alternative embodiment of the example operationalflow of FIG. 3.

FIG. 15 illustrates an alternative embodiment of the example operationalflow of FIG. 3.

FIG. 16 illustrates an alternative embodiment of the example operationalflow of FIG. 3.

FIG. 17 illustrates an alternative embodiment of the example operationalflow of FIG. 3.

FIG. 18 illustrates an alternative embodiment of the example operationalflow of FIG. 3.

FIG. 19 illustrates an alternative embodiment of the example operationalflow of FIG. 3.

FIG. 20 illustrates an alternative embodiment of the example operationalflow of FIG. 3.

FIG. 21 illustrates an alternative embodiment of the example operationalflow of FIG. 3.

FIG. 22 illustrates an alternative embodiment of the example operationalflow of FIG. 3.

FIG. 23 illustrates an alternative embodiment of the example operationalflow of FIG. 3.

FIG. 24 illustrates an alternative embodiment of the example operationalflow of FIG. 3.

FIG. 25 illustrates an alternative embodiment of the example operationalflow of FIG. 3.

FIG. 26 illustrates an alternative embodiment of the example operationalflow of FIG. 3.

FIG. 27 illustrates an alternative embodiment of the example operationalflow of FIG. 3.

FIG. 28 illustrates an alternative embodiment of the example operationalflow of FIG. 3.

FIG. 29 illustrates an alternative embodiment of the example operationalflow of FIG. 3.

FIG. 30 illustrates an alternative embodiment of the example operationalflow of FIG. 3.

FIG. 31 illustrates an alternative embodiment of the example operationalflow of FIG. 3.

FIG. 32 illustrates an alternative embodiment of the example operationalflow of FIG. 3.

FIG. 33 illustrates an alternative embodiment of the example operationalflow of FIG. 3.

FIG. 34 illustrates an alternative embodiment of the example operationalflow of FIG. 3.

FIG. 35 illustrates a partial view of an example computer programproduct that includes a computer program for executing a computerprocess on a computing device.

FIG. 36 illustrates an example system in which embodiments may beimplemented.

The use of the same symbols in different drawings typically indicatessimilar or identical items.

DETAILED DESCRIPTION

FIG. 1 illustrates an example wireless device 100 in which embodimentsmay be implemented. A wireless device 100 may include a display system153 for displaying a variety of information, such as an aggregate userinterface 155, which may include a menu 156. Wireless device 100 mayalso include a controller 160 for providing overall control of wirelessdevice 100, a (wireless) transceiver 157 to transmit (send) and receivesignals, determination logic 154 for making various determinations, andautomatic invocation system 198 for automatically invoking operationswith minimal or, in some cases, no user interaction, for example.Controller 160 may be, for example, a programmed controller ormicroprocessor, and may include hardware, software, and/or a combinationof hardware and software, for example. Controller 160 may include, forexample, a processor, memory, input and output, and other hardware,software, and/or firmware generally associated with a general purposecomputing device. An input system 159 may include a keyboard, keypad,pointing device (e.g., mouse, pointing stick), biometric identifier,button, toggle switch, or other input device that, for example, may beused by a user to input information to wireless device 100. Input System159 may include non-default actions 199 which may be, for example,button or key presses, or the like that may be used to indicate that anon-default action should be invoked.

Wireless device 100 may also include or store proximity information 158relating to one or more secondary wireless devices 101. Proximityinformation 158 may provide, for example, information relating to alocation or closeness or proximity of one or more secondary wirelessdevices to the wireless device 100. For example, proximity information158 may identify a location of each secondary wireless device, identifya distance (e.g., from device 100) to a secondary wireless device, ormay provide a list of which devices are in proximity (e.g., near orwithin a predetermined distance) to wireless device 100, and/or mayidentify which secondary wireless device(s) are closest to wirelessdevice 100, identify a secondary wireless device that has been touchedby wireless device 100, etc.

Wireless device 100 may be in proximity to or near one or more secondarywireless devices 101. Secondary wireless devices 101 may include, forexample, home audio and video related systems 110, vehicle relatedsystems 120, banking and financial related systems 130, and othersystems 140. Other systems 140 may include a variety of other examplewireless devices, such as a printer, television, and satellite receiver,shown here, as well as other devices such as a camera, personalcomputer, photo frame, personal digital assistant (PDA), or any numberof secondary wireless devices that may establish a wireless networkconnection or link with another device. Each of the secondary wirelessdevices 101 may include a controller, a wireless transceiver, automaticinvocation systems, determination or other logic, etc., as shown forwireless device 100. Each of the secondary wireless devices 101 mayinclude one or more operations 111, 121, and 131, which may be performedon or with respect to such secondary wireless devices 101, and suchoperations are not shown with respect to other systems 140, but they areincluded in those systems as well.

Secondary wireless devices 101 shown in FIG. 1 provide several exampletypes of devices but it is not an exhaustive list, and may also includeany device or part of a device with a wireless capability (e.g.,including a vehicle or car itself, or a part of the vehicle, forexample). Similarly, secondary wireless devices, which may be used todetermine an aggregate user interface 155 on the wireless device 100(and is in turn being operated by it) may not itself be “wireless” or“wireless capable”, but may work though an intermediary device (notshown) in order to communicate wirelessly with wireless device 100.

The wireless device 100 may be controlled by a user 104, for instance,to control one or more secondary wireless devices 101, which are inproximity 106 to wireless device 100 or nearby wireless device 100.According to an example embodiment, proximity 106 may refer to an areathat is near or in proximity to wireless device 100. Thus, the varioussecondary wireless devices 101 may be in proximity or near wirelessdevice 100.

In operation, the wireless device 100 may be used, for example, tocontrol one or more secondary wireless devices 101 using a variety ofdifferent techniques. When a secondary wireless device is withinproximity 106 or near wireless device 100, wireless device 100 mayestablish a wireless link or wireless network connection with thesecondary wireless device, e.g., via (wireless) transceiver 157. Forexample, by establishing a wireless link and communicating informationwith a secondary wireless device, wireless device 100 may determine ormake a determination that the secondary wireless device is in proximityto wireless device 100. Alternatively, wireless device 100 may determinethat a secondary wireless device is in proximity to wireless device 100based on a touching or contact between the device 100 and the secondarywireless device 101 (e.g., wireless device 100 touches a “hot spot” ordesignated area of the secondary wireless device). Similarly, asecondary wireless device 101 may determine that it is in proximity ornear to wireless device 100, e.g., either through a wirelesscommunication link that is established with or contact to wirelessdevice 100, for example.

According to an example embodiment, one of secondary wireless devices101 and the wireless device 100 may establish a wireless connection orwireless link and may exchange data when the two devices are near eachother or within a maximum distance, e.g., when the secondary wirelessdevice is within proximity 106 or near wireless device 100. For example,when a user carrying wireless device 100 (or other device) moves towardthe area generally indicated as proximity 106 in FIG. 1, he begins tomake closure with (or move nearer to) the proximity 106. At this pointthe wireless device 100, the secondary wireless devices 101, or acombination of both may make a determination that the wireless device100 is in proximity to one or more of the secondary wireless devices101.

Once a secondary wireless device 101 is in proximity (e.g., near ortouching) wireless device 100, a wireless connection or link may beestablished, for instance using transceiver 157 and similar transceiverson the secondary wireless devices. A variety of information may then beexchanged between the devices, and one or more actions or operations maybe performed on the wireless device 100, e.g., either as default actions(via automatic invocation system 198), or as non-default actions 199upon a user selection, for instance.

According to an example embodiment, wireless device 100 may determine anaggregate user interface 155, e.g., based on a determination that one ormore secondary wireless devices 101 are in proximity or near wirelessdevice 100 or based on a determination that one or more of the secondarywireless devices 101 have operations that are of particular use to theuser 104, or both, as examples. In an example embodiment, the aggregateuser interface 155 may be provided or displayed on display system 153 ofwireless device 100, for example.

The aggregate user interface 155 may, for example, be a user interfacethat may provide an aggregate or cumulative interface providing one ormore information elements related to one or more devices. For example,the aggregate user interface may include a list of operations associatedwith one or more devices that may be in proximity to device 100, or amenu 156 of elements or operations for each of a plurality of wirelessdevices in proximity. The aggregate user interface 155 may change or beupdated based on changing environment, e.g., a new set of operationsdisplayed as new wireless devices come into proximity, etc. Theaggregate user interface 155 may be continually updated by sorting alist of secondary wireless devices 101 in proximity 106, e.g., orderedby distance and changing the output to display system 153. This updatingof the aggregate user interface 155 may be performed, for example, inpart using determination logic 154 and controller 160, along withproximity information 158 associated with each secondary wirelessdevice. However, aggregate user interface 155 may also be centrallydetermined, or determined by an “observer” component (not shown) removedfrom the wireless device 100, or alternatively on one or more of thesecondary wireless devices 101.

A number of examples will now be provided, and these are onlyillustrative and the embodiments are not limited thereto. In oneexample, the user 104 may carry wireless device 100 and move toward acamera in the area generally indicated as proximity 106 (being inproximity to various secondary wireless devices 101), the camera havinga particular photo or image displayed thereon. In an example, if theuser 104 is holding a wireless device 100 comprising a cellular phonewith a particular contact selected, automatic invocation system 198 ofthe camera may send or wirelessly transmit the photo to the cellularphone, where the photo may be stored with or associated with the contacton the cellular phone. For example, this may be done automatically,e.g., without direct interaction from the user 104 other than to movetoward one of the secondary wireless devices 101 in the above-describedstate.

In another example, the user 104 with a PDA type wireless device 100 maymove toward a printer in other systems 140, in the area generallyindicated as proximity 106 (thus, the two devices are in proximity). Theprinter may detect the PDA wireless device and determine that thedevices are in proximity (e.g., wireless detection or contact) and mayprint a document displayed on the PDA. Alternatively, or in addition, auser 104 may use the input system 159 to provide additional input, e.g.,by tapping on input system 159, or selecting a key, or by reorientingthe wireless device (e.g., PDA in this example) to present a printdialog on the PDA or select a specific action to be performed.

When an MP3 player style wireless device 100 is brought into proximity106 with a PC in secondary wireless devices 101, a menu 156 may bepresented on the MP3 player with options, for example, to sync, beginplaying the current song on the PC, transfer the user interface of theMP3 player (in its current state) to the PC. After a brief pause (ifnone of these is explicitly selected) automatic invocation system 198may cause the MP3 player to stop playing and have the PC take overplaying the current song.

Tapping, gesturing, or reorienting a camera style wireless device 100when it is in proximity 106 with to a digital photo frame in secondarywireless devices 101 may cause automatic invocation system 198 to put asuitably transformed, current viewfinder image to the photo frame.Double tapping, represented by non-default actions 199, may be used toput the entire contents of the camera, a slideshow, and/or a menu 156 oftransition effects choices on the camera style wireless device 100.

Another example may occur when the user 104 is carrying wireless device100 and moves toward the area generally indicated as proximity 106.Automatic invocation system 198 may cause the display system 153 topresent a menu 156 of operations supported by one or more of thesecondary wireless devices 101 that are in proximity 106. The menu 156may be used to operate the secondary wireless devices 101. For example,each of the secondary wireless devices 101 are indicated as havingoperations 111, 121, and 131 that may be performed on them. The menu 156may be a list of these operations and selecting one of them sends acommand to the secondary wireless devices 101 and causes one of thesecondary wireless devices 101 to otherwise execute the command.

Another example occurs when the user 104 is carrying wireless device 100and moves toward the area generally indicated as proximity 106. Thewireless device 100 automatically connects to a DVD in home audio andvideo related systems 110 and then to a CD player in home audio andvideo related systems 110 and then to a game system, such as an Xbox orPlaystation, which may be used to determine and/or provide an aggregateuser interface 155 presenting a collected user interface for all thedevices in home audio and video related systems 110. The aggregate userinterface 155 may then be used to operate all of the devices in homeaudio and video related systems 110. For example, a menu 156 may beprovided with a “Play” operation 111 with a submenu “Play Music, PlayDVD” each of which has submenus, (i.e., On Xbox, On CD player). Thisaggregate user interface 155 and/or menu 156 may also vanish ordisappear from display system 153 after a fixed time unless the user 104asks to keep it, for example.

Another example occurs when the user 104 is carrying wireless device 100and moves toward the area generally indicated as proximity 106 andestablishes a wireless link to or contacts vehicle related systems 120.Automatic invocation system 198 may be used to unlock the car bydefault, e.g., after device comes into proximity with the vehiclerelated system 120 (e.g., either through contact with vehicle relatedsystem 120 or by establishing a wireless link or communication withvehicle related system 120). Alternatively, pressing a button, forexample, in non-default actions 199 may present a menu 156 with choices(unlock, adjust seats, unlock all, start engine, turn lights on, andopen windows, for example) on device 100 with respect to the vehiclesystem 120 that is now in proximity 106 to wireless device 100. Walkingaway from the car in vehicle related systems 120 may cause the wirelessdevice 100 to leave proximity 106 which can similarly invoke an actionautomatically via automatic invocation system 198, for example lockingthe car (or otherwise performing a default set of “leaving” actions thatuser 104 has set on wireless device 100). This set of leaving actionsmay occur, e.g., either in response to a user selection on input system159, or may occur automatically when wireless device 100 determines thatit is no longer in proximity 106 to the vehicle related systems 120(e.g., device 100 no longer contacting vehicle related systems 120 orwireless detection that device 100 is no longer near or in proximity tovehicle related systems 120, such as detecting that a wireless link hasbeen disconnected, or no longer associated with vehicle related systems120).

The above system may be caused to couple with banking and financialrelated systems 130, for example in the case of a vehicle rentalactivity by a user. The wireless device 100 may be set by default to notonly use vehicle related systems 120 to unlock the car and start themotor, for example, but it might also charge the user's credit card thefee required to rent the vehicle as well. Such user data needed tocomplete the transaction may be stored in the wireless device 100 or itmay be known by secondary wireless devices 101 as well.

If the wireless device 100 is in proximity 106 to a TV in other systems140, automatic invocation system 198 may be used to turn on to the showthat user 104 has scheduled in his calendar for this time. If no defaultaction is available (i.e., the user 104 has no calendar entry), theviewing history or preferences of the user 104 may be used to select achannel, if viewing history and/or preferences cannot be used, thesystem may turn on the TV as usual. Alternatively, if user 104 has a webbrowser application executing on the wireless device 100 and the webbrowser is pointed to the URL “http://www.cnn.com/, for example, the TVmay be tuned to CNN as well.

In another example, the user 104 moves toward proximity 106 with aplurality of secondary wireless devices 101. If, for example, the user104 uses the non-default actions 199 of input system 159 to activate an“available actions” button, a list of the secondary wireless devices 101present their operations to wireless device 100 at display system 153.

Secondary wireless devices 101 may also indicate what direction user 104needs to walk to approach a particular device, using at least proximityinformation 158. As the user 104 gets closer to some and farther fromothers of the secondary wireless devices 101 and their operations 111,121, and 131 reorder themselves on the aggregate user interface 155,e.g., closest devices at the top, until the user 104 get very close atwhich point the options for only one (the closest) of the secondarywireless devices 101 is presented on the aggregate user interface 155 ondisplay system 153. Thus, the aggregate user interface 155 may becontinually updated using at least determination logic 154 and proximityinformation 158 in wireless device 100. Finally, a user 104 of thedevice 100 may cause to invoke a default or non-default action (forinstance by gesturing, tilting the wireless device, or otherwiseindicating a default or non-default action should occur depending on theoperations available).

In another example, the wireless device 100 may make a determinationabout the locations of the secondary wireless devices 101. The locationsmay be communicated, e.g., from the secondary wireless devices 101, to acentral device (not shown) that may compute proximities and transmit tothe wireless device 100, or also to one or more of the secondarywireless devices 101. One or more of the secondary wireless devices 101may also use the location of the wireless device 100 to transmit itsproximity 106 or location to it. In this example, the secondary wirelessdevices 101 might not transmit proximity 106 or location information atall, but instead decide for itself what commands, it wants to transmitto the wireless device 100. Alternatively, some secondary wirelessdevices 101 might, in addition to transmitting enough locationinformation for the wireless device 100 to determine proximity 106, alsotransmit specific information (such as subsets of options or commands)based on the determination of proximity 106 from the secondary wirelessdevices 101.

FIG. 2 illustrates certain alternative embodiments of the wirelessdevice 100 of FIG. 1. FIG. 2 includes a wireless device 100, a displaysystem 153, an aggregate user interface 155, and a plurality of menus200, 202, 204, 206, 208, and 210. Menus 200-210 may correspond, forinstance to menu 156 of FIG. 1.

Menu 200 comprises a list of secondary wireless devices that are inproximity with wireless device 100. In this example that includes anaudio system, a printer, a TV, a camera, a video satellite receiver, anair conditioner, the living room lighting, and a refrigerator. In thisexample, the audio system is the closest secondary wireless device, soits operations are shown in menu 202, which include in this example,“play song”, “download audio file”, “select radio station”, and “adjustvolume”.

Menus 204 and 206 are also shown on aggregate user interface 155. Menu204 includes the secondary wireless devices 101 that are near but notyet in proximity 106 with a user's wireless device 100. In this example,the user is walking toward a garage. As the user 104 walks, the garagelighting and the user's Honda Civic are nearly in proximity 106, andrepresent secondary wireless devices 101 that will soon probably beavailable and within proximity 106. The garage lighting and Honda Civicare listed in menu 204. The closest, default, or secondary wirelessdevice 101 deemed most important is listed in menu 206, which is theuser's Honda Civic. The user's behavior patterns may have indicated tothe wireless device 100 that the Honda Civic is most important, or theuser may have specified that information explicitly to wireless device100, or alternatively menu 206 may be based solely on proximity 106, bylisting the closest secondary wireless device 101 as in menu 202.

Menu 208 gives an example of a list that may form part of the aggregateuser interface 155, showing the access restrictions for devices that arein proximity 106. In this case, the printer, TV, and camera arerestricted, while the air conditioner and refrigerator are available foruse. Menu 210 shows secondary wireless device ownership. In menu 210,Dad owns the printer and mom owns the TV. The camera is owned by Johnny,and the wireless network and refrigerator have unspecified ownershipand/or are deemed to be owned by anyone capable of establishing aconnection with them using a wireless device 100.

FIG. 3 illustrates an operational flow 300 representing exampleoperations related to the wireless device with an aggregate userinterface for controlling other devices. In FIG. 3 and in followingfigures that include various examples of operational flows, discussionand explanation may be provided with respect to the above-describedexamples of FIGS. 1-2, and/or with respect to other examples andcontexts. However, it should be understood that the operational flowsmay be executed in a number of other environments and contexts, and/orin modified versions of FIGS. 1-2. Also, although the variousoperational flows are presented in the sequence(s) illustrated, itshould be understood that the various operations may be performed inother orders than those which are illustrated, or may be performedconcurrently.

After a start operation, the operational flow 300 moves to a makingoperation 310 where a determination is made that a wireless device is inproximity to at least one secondary wireless device. For example, asshown in FIG. 1, controller 160 of wireless device 100 may make adetermination that one or more secondary wireless devices 101 are inproximity 106 to wireless device 100 by detecting a touching or contactbetween the two wireless devices. Alternatively, wireless device 100 maymake a determination that it is in proximity 106 or near a secondarywireless device 101 by wirelessly detecting the secondary wirelessdevice 101 and/or establishing a wireless link or connection with thesecondary wireless device 101, for example.

In another example embodiment, determination logic 154 of device 100 maymake a determination that device 100 is in proximity to a secondarywireless device 101, e.g., based on device contact or based on awireless link that may be established via transceiver 157 to thesecondary wireless device 101. Based on this determination, proximityinformation 158 may be updated to indicate that this secondary device isin proximity 106, e.g., identifying the device, its location ordistance, etc. Alternatively, a wireless link may be established orcontact detected, which may cause proximity information 158 to beupdated. Determination logic 154 may then make a determination that thesecondary wireless device 101 is not in proximity 106 to wireless device100 based on this proximity information 158, for example, and/or incombination with additional information from controller 160.

Then, in a determining operation 320, an aggregate user interface on thewireless device is determined based on the determination. For example,one or more information elements may be provided on display system 153,e.g., based on the at least one secondary wireless device 101 that is inproximity 106 to the wireless device 100. The aggregate user interface155 may be displayed on display system 153, e.g., including a menu ofoperations that may be performed for one or more of the secondarywireless devices 101. In addition, display system 153 may include anaggregate user interface 155 that may be formed in a variety ofdifferent ways, such as shown and described in the examples of FIG. 1,including using a menu 156. Proximity information 158 may be used withdetermination logic 154 to combine a plurality of operations 111, 121,and 131 that are available on the secondary wireless devices 101 andcombine or aggregate them into a single menu or a plurality of menus asan aggregate user interface 155 on display system 153 of the wirelessdevice 100, for example.

An operation(s) may be performed related either to a local or remotestorage of the digital data, or to another type of transmission of thedigital data. As discussed herein, in addition to accessing, querying,recalling, or otherwise obtaining the digital data for the making ordetermining operation, operations may be performed related to storing,sorting, identifying, associating, or otherwise archiving the digitaldata to a memory, including, for example, sending and/or receiving atransmission of the digital data from a remote memory. Accordingly, anysuch operation(s) may involve elements including at least an operator(e.g., either human or computer) directing the operation, a transmittingcomputer, and/or a receiving computer, and should be understood to occurwithin the United States as long as at least one of these elementsresides in the United States.

FIG. 4 illustrates alternative embodiments of the example operationalflow 300 of FIG. 3. FIG. 4 illustrates example embodiments where themaking operation 310 may include at least one additional operation.Additional operations may include an operation 402.

At the operation 402 a determination is made that the wireless device isin proximity to one or more of a plurality of secondary wirelessdevices. For example, as shown in FIG. 1, controller 160 of wirelessdevice 100 may make a determination that one or more secondary wirelessdevices 101 are in proximity to wireless device 100 by detecting atouching or contact between the two wireless devices. Alternatively,wireless device 100 may make a determination that it is in proximity 106or near a secondary wireless device 101 by wirelessly detecting thesecondary wireless device 101 and/or establishing a wireless link orconnection with the secondary wireless device 101, for example. Othermethods known to those skilled in the art may be used including aBluetooth connection, an 802.11(a)-(g) type connection, a satelliteconnection, an RF connection, an IR connection, or any other connection.

FIG. 5 illustrates alternative embodiments of the example operationalflow 300 of FIG. 3. FIG. 5 illustrates example embodiments where thedetermining operation 320 may include at least one additional operation.Additional operations may include an operation 502.

At the operation 502 an available interaction is provided with one ormore operations related to the at least one secondary wireless devicebased on the determination. Interactions include, for example, menuchoices 200-210 shown in FIG. 2. The available interactions may be usedto represent operations 111, 121, and 131 of FIG. 1 that are availableto be controlled by a user 104 via a wireless device 100. For example, acable set-top box might offer the operations “Order Pay Per View”,“Change Channel”, “Record Show”, and the like.

FIG. 6 illustrates alternative embodiments of the example operationalflow 300 of FIG. 3. FIG. 6 illustrates example embodiments where thedetermining operation 320 may include at least one additional operation.Additional operations may include an operation 602.

At the operation 602 a menu of operations is provided on the wirelessdevice including at least one operation for one or more of the at leastone secondary wireless device based on the determination. For example,menu choices 200-210 give a partial example of some of the menus thatmay be provided in the aggregate user interface 155. Operations 111,121, 131 are specific to each of the secondary wireless devices 101. Forinstance, a CD player may have the operations “play”, “stop”, and“pause”, while a printer may have the operations “print color”, “printblack and white”, or “setup”.

FIG. 7 illustrates alternative embodiments of the example operationalflow 300 of FIG. 3. FIG. 7 illustrates example embodiments where thedetermining operation 320 may include at least one additional operation.Additional operations may include an operation 702, operation 704,operation 706, operation 708, operation 710, and/or operation 712.

At the operation 702 one or more of the at least one secondary wirelessdevices are identified. The identification process may occur, forexample by the wireless device 100, by the secondary wireless devices101, a combination of both, or alternatively using an external observerobject for facilitating such an exchange. In some of the scenarios, theuser's wireless device 100 identifies the secondary wireless devices 101passively and is essentially a receiver of the identificationinformation and uses its determination logic 154 and/or proximityinformation 158 to complete the identification process.

At the operation 704 a function for one or more of the at least onesecondary wireless device is identified. The functions, for example, mayrepresent operations 111, 121, and 131 that are available on thesecondary wireless devices 101.

At the operation 706 a property, attribute, or sub-component for one ormore of the at least one secondary wireless device is identified. Theproperty, attribute, or sub-component for one or more of the at leastone secondary wireless device 101 may be used, for example, to determinean aggregate user interface 155 on the wireless device 100.

At the operation 708 a relative location for one or more of the at leastone secondary wireless devices is identified. The relative location maybe used, for example, to determine an updated aggregate user interface155 on the wireless device 100, which may give precedence, for example,to devices that are closer to the user, since those are the devices theuser 104 most likely wants to use.

At the operation 710 the ownership for one or more of the at least onesecondary wireless device is identified. The ownership may be used, forexample, to determine an aggregate user interface 155 on the wirelessdevice 100, which may comprise information related to the owner's of thedevices in proximity 106. Devices not owned by the user 104 may beinaccessible and hence, not as relevant when determining an aggregateuser interface 155.

At the operation 712 any access restrictions for one or more of the atleast one secondary wireless device is identified. The accessrestrictions may be used, for example, to determine an aggregate userinterface 155 on the wireless device 100, which may comprise informationrelated to which of the devices in the proximity 106 are devices thatthe user will be able to access.

FIG. 8 illustrates alternative embodiments of the example operationalflow 300 of FIG. 3. FIG. 8 illustrates example embodiments where thedetermining operation 320 may include at least one additional operation.Additional operations may include an operation 800, operation 802,operation 804, operation 806, operation 808, operation 810, operation812 and/or operation 814.

At the operation 800 an aggregate user interface is provided on thewireless device based on a function of one or more of the at least onesecondary wireless devices. For example, using the wireless device 100,the secondary wireless devices 101, a combination of both, oralternatively using an external observer object for facilitating such anexchange, the functions for all or some of the secondary wirelessdevices 101 are used to create an aggregate user interface 155 that maycombine all of the available operations into one or more menus.

At the operation 802 an aggregate user interface is provided on thewireless device based on a capability of one or more of the at least onesecondary wireless device. For example, certain capacity devices may betreated differently when the aggregate user interface 155 is determined.At the operation 804 an aggregate user interface is provided on thewireless device based on a location of one or more of the at least onesecondary wireless device. For example, certain locations of devices maybe treated differently when the aggregate user interface 155 isdetermined (i.e., closer devices may be reordered to a higher positionin the combined user interface.). At the operation 806 an aggregate userinterface is provided on the wireless device based on an ownership ofone or more of the at least one secondary wireless device. For example,certain ownerships of devices may cause them to be treated differentlywhen the aggregate user interface 155 is determined (i.e., devices thecurrently logged in user does not own may be removed or pushed down inthe aggregate user interface 155).

At the operation 808 an aggregate user interface is provided on thewireless device based on an access restriction of one or more of the atleast one secondary wireless device. Devices that are restricted fromthe current user 104 may be less relevant when determining an aggregateuser interface 155. At the operation 810 an aggregate user interface 155is provided on the wireless device 100 based on a history of use of oneor more of the at least one secondary wireless devices 101. For example,if a device has not been used for a long enough period of time it may bedropped from the aggregate user interface 155 altogether. At theoperation 812 an aggregate user interface is provided on the wirelessdevice based on a user configuration with respect to one or more of theat least one secondary wireless device. For example, a userconfiguration may be used to customize the aggregate user interface 155.At the operation 814 an aggregate user interface is provided on thewireless device based on a closure rate of one or more of the at leastone secondary wireless device. For example, objects with a closure rateindicating they are near proximity 106 may be pushed high in theaggregate user interface 155 when it is determined, because those aredevices the user is likely intending to use in the near future.

FIG. 9 illustrates alternative embodiments of the example operationalflow 300 of FIG. 3. FIG. 9 illustrates example embodiments where thedetermining operation 320 may include at least one additional operation.Additional operations may include an operation 900, and/or operation902.

At the operation 900 information is received at the wireless deviceindicating at least one function of one or more of the at least onesecondary wireless device. Functions may include, for example, theavailable interactions that the user may have with the secondarywireless devices 101 which are in proximity 106 to the wireless device100.

At the operation 902 an aggregate user interface is provided on thewireless device indicating the at least one function of one or more ofthe at least one secondary wireless device based on the information. Thewireless device 100 may, for example, use determination logic 154 inconjunction with proximity information 158 in order to present thefunctions in the aggregate user interface 155 in a more intuitivemanner, for instance, closer devices can be displayed higher in themenu.

FIG. 10 illustrates alternative embodiments of the example operationalflow 300 of FIG. 3. FIG. 10 illustrates example embodiments where thedetermining operation 320 may include at least one additional operation.Additional operations may include an operation 1000 and/or operation1002.

At the operation 1000 a state or property of an application on thewireless device is determined. The open applications may, for example,provide indicators to the system as to how default operations shouldtake place when a wireless device 100 with such an open application isin proximity 106 to a secondary wireless device 101.

At the operation 1002 an aggregate user interface on the wireless deviceis provided based on the determination and based on the determining astate or property of an application on the wireless device. For example,the user 104 may have a web browser application executing on thewireless device 100 and the web browser is pointed to the “AnaheimAngels” baseball team website. If the user 104 takes the wireless device100 toward proximity 106 and makes a connection with a TV with a recordlive television function, then the automatic invocation system 198 mayautomatically schedule the Anaheim Angels baseball game to be recorded,if such a game is found in the program guide or other data.

FIG. 11 illustrates alternative embodiments of the example operationalflow 300 of FIG. 3. FIG. 11 illustrates example embodiments where thedetermining operation 320 may include at least one additional operation.Additional operations may include an operation 1100 and/or operation1102.

At the operation 1100 it is determined that a first secondary wirelessdevice is closest to the wireless device. At the operation 1102 anaggregate user interface is provided on the wireless device including anavailable interaction with one or more operations related to the firstsecondary wireless device. For example, as the user 104 walks toward aCD player and the CD player becomes the closest secondary wirelessdevice 101, an aggregate user interface 155 may be provided on thewireless device 100 giving the users the options, for instance, “Play”and “Eject” most prominently.

FIG. 12 illustrates alternative embodiments of the example operationalflow 300 of FIG. 3. FIG. 12 illustrates example embodiments where thedetermining operation 320 may include at least one additional operation.Additional operations may include an operation 1200 and operation 1202.

At the operation 1200 it is determined that a second secondary wirelessdevice is closest to a wireless device. At the operation 1202 anaggregate user interface is provided on the wireless device including anavailable interaction with one or more operations related to the secondsecondary wireless device.

For example, as previously described, the user 104 walks toward a CDplayer and the CD player becomes the closest secondary wireless device101, an aggregate user interface 155 may be provided on the wirelessdevice 100 giving the user's the options, for instance, “play” and“eject” most prominently. As the user 104 moves away from the CD player,the television may become the closest device, so the aggregate userinterface 155 is updated when the new information is determined. A newmenu may then be provided on wireless device 100 that includes, forinstance, indicating available interaction with one or more operationsrelated to the television, such as “TV ON”, “RECORD”, and “TV GUIDE,”for example.

FIG. 13 illustrates alternative embodiments of the example operationalflow 300 of FIG. 3. FIG. 13 illustrates example embodiments where thedetermining operation 320 may include at least one additional operation.Additional operations may include an operation 1300 and/or operation1302.

At the operation 1300 information is received at the wireless device,the information including at least one of updated proximity informationfor the at least one secondary wireless device, key-related inputs froma user, and/or gestures by a user using the wireless device. At theoperation 1302 an updated aggregate user interface is provided on thewireless device based on the information.

FIG. 14 illustrates alternative embodiments of the example operationalflow 300 of FIG. 3. FIG. 14 illustrates example embodiments where thereceiving operation 1300 may include at least one additional operation.Additional operations may include an operation 1400.

At the operation 1400 information is received at the wireless device,the information including at least one of updated proximity informationfor the at least one secondary wireless device, key-related inputs froma user, and gestures by a user using the wireless device, the gesturesfrom a user including at least one of moving the wireless device,tilting the wireless device, reorienting the wireless device withrespect to the at least one secondary wireless device, moving thewireless device towards the at least one secondary wireless device,moving the wireless device away from the at least one secondary wirelessdevice, pointing a portion of the wireless device at the at least onesecondary wireless device, and/or touching the wireless device to the atleast one secondary wireless device.

FIG. 15 illustrates alternative embodiments of the example operationalflow 300 of FIG. 3. FIG. 15 illustrates example embodiments where thedetermining operation 320 may include at least one additional operation.Additional operations may include an operation 1500, operation 1502,operation 1504, and/or operation 1506.

At the operation 1500 a location for one or more of the at least onesecondary wireless device is determined. At operation 1502 one or moreoperations available on one or more of the at least one secondarywireless device are determined. At operation 1504 the one or moreoperations available are sorted, based at least in part on the location.At operation 1506, an aggregate user interface is provided on thewireless device based at least in part on sorting the one or moreoperations available, based at least in part on the location.

FIG. 16 illustrates alternative embodiments of the example operationalflow 300 of FIG. 3. FIG. 16 illustrates example embodiments where thedetermining operation 320 may include at least one additional operation.Additional operations may include an operation 1600, operation 1602,operation 1604, and/or operation 1606.

At the operation 1600 one or more default operations available on one ormore of the at least one secondary wireless device are determined. Atoperation 1602 one or more non-default operations available on one ormore of the at least one secondary wireless device are determined. Atoperation 1604 an aggregate user interface is provided on the wirelessdevice based at least in part on the determining one or more defaultoperations available on one or more of the at least one secondarywireless device and determining one or more non-default operationsavailable on one or more of the at least one secondary wireless device.At operation 1606, at least one of the one or more default operationsare invoked substantially automatically if no action occurs.

FIG. 17 illustrates alternative embodiments of the example operationalflow 300 of FIGS. 3 and 13. FIG. 17 illustrates example embodimentswhere the providing operation 1302 may include at least one additionaloperation. Additional operations may include an operation 1700,operation 1702, and/or operation 1704.

At the operation 1700 an order of information elements of the aggregateuser interface provided on the wireless device is updated based on theinformation. For example, an order of operations on a menu may beadjusted to provide operations for a closest device at the top, andoperations for devices farthest away near the bottom of the menu. Atoperation 1702 one or more of the information elements of the aggregateuser interface provided on the wireless device are removed based on theinformation. For example, based on a user input or based on updatedproximity information for a device, operations for a secondary wirelessdevice may be removed from a menu. At operation 1704 an order ofinformation elements of the aggregate user interface is updated based inpart on a closure or closure rate. For example, a listing or menu ofavailable devices or wireless devices in proximity may be updated tolist a secondary wireless device at the top of the menu that has a rateof closure (e.g., a rate of decreasing distance or increasing signalstrength) that may be greater than other secondary wireless devices inproximity to the wireless device. This may, for example, indicate thatthe user/wireless device is approaching a specific secondary wirelessdevice (more quickly than other devices), and the operations associatedwith this specific secondary wireless device may be listed at a top ofthe menu, highlighted, etc.

FIG. 18 illustrates an alternative embodiment of the example operationalflow 300 of FIG. 3. FIG. 18 illustrates an example embodiment where theexample operational flow 300 may include at least one additionaloperation. Additional operations may include an operation 1800. Atsending operation 1800, a command is sent to one or more of the at leastone secondary wireless device via the aggregate user interface. Forexample, the command may be sent in response to the aggregate userinterface 155 that has been provided to the user 104.

FIG. 19 illustrates an alternative embodiment of the example operationalflow 300 of FIG. 3. FIG. 19 illustrates an example embodiment where theexample operational flow 300 may include at least one additionaloperation. Additional operations may include an operation 1900. Atsending operation 1900, a command is sent to one or more of the at leastone secondary wireless devices without using the aggregate userinterface. For example, the command may be sent in response to a defaultoperation, a minimal interaction like a gesture, a tilting of thewireless device 100, a re-orientation of the wireless device 100, anyevent that activates automatic invocation system 198, and the like.

FIG. 20 illustrates an alternative embodiment of the example operationalflow 300 of FIG. 18. FIG. 20 illustrates an example embodiment where thesending operation 1800 may include at least one additional operation.Additional operations may include an operation 2000.

At selecting operation 2000, an item is selected from an entry in amenu. Therefore, the user may use the aggregate user interface 155 whena menu 156 is provided, for example. Selecting an entry in the menu 156may comprise, for instance, sending a command to invoke one or moreoperations on one or more of the secondary wireless devices 101.

FIG. 21 illustrates an alternative embodiment of the example operationalflow 300 of FIG. 18. FIG. 21 illustrates an example embodiment where thesending operation 1800 may include at least one additional operation.Additional operations may include an operation 2100.

At the operation 2100 a transceiver is used to send the command. Forexample, as shown in FIG. 1, wireless device 100 may make adetermination that secondary wireless devices 101 are in proximity 106to wireless device 100 by detecting a touching or contact between thetwo wireless devices. Alternatively, wireless device 100 may make adetermination that it is in proximity 106 or near a secondary wirelessdevice 101 by wirelessly detecting the secondary wireless device 101and/or establishing a wireless link or connection with the secondarywireless device 101, for example. A transceiver 157 may be used in thewireless device 100 and/or the secondary wireless devices 101 to handlethe connection. The command which is transmitted using the transceiver157 may be, for instance, to invoke one or more operations on thesecondary wireless device 101.

FIG. 22 illustrates an alternative embodiment of the example operationalflow 300 of FIG. 18. FIG. 22 illustrates an example embodiment where thesending operation 1800 may include at least one additional operation.Additional operations may include an operation 2200.

At the operation 2200 a personal digital assistant (PDA) is used to sendthe command. For example, the PDA may be not only a controller 160 forthe wireless device 100, but it may also be in a state that is used bythe system when determining what aggregate user interface 155 should beprovided, (i.e., if the user has an open browser application, the user'sURL may be used to determine what state the secondary wireless device101 should enter when it is turned on).

FIG. 23 illustrates an alternative embodiment of the example operationalflow 300 of FIG. 18. FIG. 23 illustrates an example embodiment where thesending operation 1800 may include at least one additional operation.Additional operations may include an operation 2300.

At the operation 2300 a computing device with a wireless networkconnection is used to send the command. For example, the computingdevice may be not only a controller 160 for the wireless device 100, butit may also be in a state that is used by the system when determiningwhat aggregate user interface 155 should be provided, (e.g., if the userhas an open “contact” application, the user's contact may be e-mailed animage automatically, if the user 104 connects to a secondary wirelessdevice 101 that has that image displayed).

FIG. 24 illustrates an alternative embodiment of the example operationalflow 300 of FIG. 18. FIG. 24 illustrates an example embodiment where thesending operation 1800 may include at least one additional operation.Additional operations may include an operation 2400.

At the sending operation 2400, a command is sent to one or more of theat least one secondary wireless device via the aggregate user interface,wherein the command is to transition one or more of the at least onesecondary wireless device from an off state to an on state. For example,the wireless device 100 may be used to activate (or turn on) a secondarywireless device 101 that is currently turned off, when the user 104wants to access the device.

FIG. 25 illustrates an alternative embodiment of the example operationalflow 300 of FIG. 18. FIG. 25 illustrates an example embodiment where thesending operation 1800 may include at least one additional operation.Additional operations may include an operation 2500.

At the sending operation 2500, a command is sent to one or more of theat least one secondary wireless device via the aggregate user interface,wherein the command is to transition one or more of the least onesecondary wireless device from an on state to an off state. For example,the wireless device 100 may be used to de-activate (e.g., turn off) asecondary wireless device 101 that is currently turned on, when the user104 no longer wants to access the device.

FIG. 26 illustrates an alternative embodiment of the example operationalflow 300 of FIG. 18. FIG. 26 illustrates an example embodiment where thesending operation 1800 may include at least one additional operation.Additional operations may include an operation 2600.

At the sending operation 2600, a command is sent to one or more of theat least one secondary wireless device via the aggregate user interface,wherein the command is to transition one or more of the at least onesecondary wireless device from a first state to a second state. Forexample, the wireless device 100 may be used to change the state of asecondary wireless device 101 that is currently turned on, when the user104 wants to interact with the device in a different manner than he iscurrently interacting with the device.

FIG. 27 illustrates an alternative embodiment of the example operationalflow 300 of FIG. 19. FIG. 27 illustrates an example embodiment where thesending operation 1900 may include at least one additional operation.Additional operations may include an operation 2700.

At the providing operation 2700, a menu is provided. For example, adefault operation may be invoked automatically (i.e., turn on a device),then the device may provide the associated menu to the user's wirelessdevice 100.

FIG. 28 illustrates an alternative embodiment of the example operationalflow 300 of FIG. 19. FIG. 28 illustrates an example embodiment where thesending operation 1900 may include at least one additional operation.Additional operations may include an operation 2800.

At the operation 2800 a transceiver is used to send the command. Forexample, as shown in FIG. 1, transceiver 157 may be used in a wirelessdevice 100 to handle a wireless connection to a plurality of secondarywireless devices 101. The command which is transmitted using thetransceiver 157 may be, for instance, to invoke one or more operationson the secondary wireless device 101 either automatically by default, oras non-default actions 199 that the user 104 chooses to invoke.

FIG. 29 illustrates an alternative embodiment of the example operationalflow 300 of FIG. 19. FIG. 29 illustrates an example embodiment where thesending operation 1900 may include at least one additional operation.Additional operations may include an operation 2900.

At the operation 2900, a personal digital assistant (PDA) is used tosend the command. The PDA may be configured, for instance, to respond togesturing, re-orienting, opening and closing, or otherwise repositioningthe PDA in a physical manner to determine that the command should besent, as opposed to such a command being explicitly selected from a menu156 by the user 104.

FIG. 30 illustrates an alternative embodiment of the example operationalflow 300 of FIG. 19. FIG. 30 illustrates an example embodiment where thesending operation 1900 may include at least one additional operation.Additional operations may include an operation 3000.

At the operation 3000, a computing device with a wireless networkconnection is used to send the command. For example, a handheldcomputing device, such as a cell phone or PDA, may send a command (e.g.,a “record song” command) via a wireless link or wireless networkconnection to an audio recording device.

FIG. 31 illustrates an alternative embodiment of the example operationalflow 300 of FIG. 19. FIG. 31 illustrates an example embodiment where thesending operation 1900 may include at least one additional operation.Additional operations may include an operation 3100.

At sending operation 3100, a command is sent to one or more of the atleast one secondary wireless device without using the aggregate userinterface, wherein the command is to transition one or more of the atleast one secondary wireless device from an off state to an on state.For example, the wireless device 100 may be used to activate a secondarywireless device 101 that is currently turned off, when the user 104wants to access the device. The aggregate user interface 155 may bebypassed in instances where the wireless device 100 is instructed by theuser 104 to perform such an action by default, the environment or usehabits indicate that this is the default state, or by some othertechnique.

FIG. 32 illustrates an alternative embodiment of the example operationalflow 300 of FIG. 19. FIG. 32 illustrates an example embodiment where thesending operation 1900 may include at least one additional operation.Additional operations may include an operation 3200.

At sending operation 3200, a command is sent to one or more of the atleast one secondary wireless device without using the aggregate userinterface, wherein the command is to transition one or more of the atleast one secondary wireless device from an on state to an off state.For example, the wireless device 100 may be used to de-activate asecondary wireless device 101 that is currently turned on, when the userno longer wants to access the device.

FIG. 33 illustrates an alternative embodiment of the example operationalflow 300 of FIG. 19. FIG. 33 illustrates an example embodiment where thesending operation 1900 may include at least one additional operation.Additional operations may include an operation 3300.

At sending operation 3300, a command is sent to one or more of the atleast one secondary wireless device without using the aggregate userinterface, wherein the command is to transition one or more of the atleast one secondary wireless device from a first state to a secondstate. For example, the wireless device 100 may be used to change thestate of a secondary wireless device 101 that is currently turned on,when the user 104 wants to interact with the device in a differentmanner than he is currently interacting with the device.

FIG. 34 illustrates alternative embodiments of the example operationalflow of FIG. 3. FIG. 34 illustrates example embodiments where the makingoperation 310 may include at least one additional operation, and/orwhere the determining operation 320 may include at least one additionaloperation. Additional operations may include operations 3402 and 3404.

At making operation 3402, a determination is made that the wirelessdevice is in proximity to a first secondary wireless device and a secondsecondary wireless device. For example, wireless device 100 may make adetermination that it is in proximity to a television and to a DVDrecorder.

At sending operation 3404, at least one command is sent to the first andsecond secondary wireless devices to control the first and secondsecondary wireless devices to perform first and second relatedoperations, respectively. For example, a “record TV program” command maybe sent to the television and the DVD recorder to control the televisionto tune to a television program and to control the DVD recorder to beginrecording the program. The “record TV program” may be one command ormultiple commands. In an example embodiment, the operation of thetelevision tuning to a specific TV program and the DVD recorderrecording the program may be considered to be related operations, e.g.,since these operations may be used or performed together to accomplish arequested task or function. Alternatively, wireless device 100 may senda first command (“record TV program”) to the television, and where thetelevision may separately communicate with a DVD recorder (which may ormay not be in proximity to the wireless devise 100) to arrange for theTV program to be recorded.

FIG. 35 illustrates a partial view of an example computer programproduct 3500 that includes a computer program 3504 for executing acomputer process on a computing device. An embodiment of the examplecomputer program product 3500 is provided using a signal bearing medium3502, and may include at least one of one or more instructions formaking a determination that a wireless device is in proximity to atleast one secondary wireless device, the signal bearing medium alsobearing one or more instructions for determining an aggregate userinterface on the wireless device based on the determination. The one ormore instructions may be, for example, computer executable and/orlogic-implemented instructions. In one implementation, thesignal-bearing medium 3502 may include a computer-readable medium 3506.In one implementation, the signal bearing medium 3502 may include arecordable medium 3508. In one implementation, the signal bearing medium3502 may include a communications medium 3510.

FIG. 36 illustrates an example system 3600 in which embodiments may beimplemented. The system 3600 includes a computing system environment atwireless device 100 and secondary wireless devices 101. The system 3600also illustrates the user 104 using the wireless device 100, which isoptionally shown as being in communication with the secondary wirelessdevices 101 by way of a proximity based connection 106. The proximity106 may represent a local, wide-area, or peer-to-peer network, or mayrepresent a bus that is internal to a computing device (e.g., in exampleembodiments in which the computing device 3602 is contained in whole orin part within the device 3604). A storage medium 3608 may be anycomputer storage media. The wireless device 100 and secondary wirelessdevices 101 use computer-executable instructions 3610 that when executedon the wireless device 100 and/or the secondary wireless devices 101cause the computing devices to make a determination that a wirelessdevice is in proximity to at least one secondary wireless device, anddetermine an aggregate user interface on the wireless device based onthe determination.

In FIG. 36, then, the system 3600 includes at least one computing device(e.g., 3602 and/or 3604). The computer-executable instructions 3610 maybe executed on one or more of the at least one computing device. Forexample, the computing device 3602 may implement the computer-executableinstructions 3610 and output a result to (and/or receive data from) thecomputing device 3604. Since the computing device 3602 may be wholly orpartially contained within the computing device 3604, the computingdevice 3604 also may be said to execute some or all of thecomputer-executable instructions 3610, in order to be caused to performor implement, for example, various ones of the techniques describedherein, or other techniques.

The wireless device 100 may include, for example, one or more of apersonal digital assistant (PDA), a laptop computer, a tablet personalcomputer, a networked computer, a computing system comprised of acluster of processors, a workstation computer, a cellular phone, asmartcard, a remote control, and/or a desktop computer. In anotherexample embodiment, the wireless device 100 may be operable tocommunicate with the secondary wireless devices 101 to communicate witha database (e.g., implemented using the storage medium 3608) to accessthe at least one dataset and/or to access the second dataset.

Those having skill in the art will recognize that the state of the arthas progressed to the point where there is little distinction leftbetween hardware and software implementations of aspects of systems; theuse of hardware or software is generally (but not always, in that incertain contexts the choice between hardware and software can becomesignificant) a design choice representing cost vs. efficiency tradeoffs.Those having skill in the art will appreciate that there are variousvehicles by which processes and/or systems and/or other technologiesdescribed herein can be effected (e.g., hardware, software, and/orfirmware), and that the preferred vehicle will vary with the context inwhich the processes and/or systems and/or other technologies aredeployed. For example, if an implementer determines that speed andaccuracy are paramount, the implementer may opt for a mainly hardwareand/or firmware vehicle; alternatively, if flexibility is paramount, theimplementer may opt for a mainly software implementation; or, yet againalternatively, the implementer may opt for some combination of hardware,software, and/or firmware. Hence, there are several possible vehicles bywhich the processes and/or devices and/or other technologies describedherein may be effected, none of which is inherently superior to theother in that any vehicle to be utilized is a choice dependent upon thecontext in which the vehicle will be deployed and the specific concerns(e.g., speed, flexibility, or predictability) of the implementer, any ofwhich may vary. Those skilled in the art will recognize that opticalaspects of implementations will typically employ optically-orientedhardware, software, and or firmware.

The foregoing detailed description has set forth various embodiments ofthe devices and/or processes via the use of block diagrams, flowcharts,and/or examples. Insofar as such block diagrams, flowcharts, and/orexamples contain one or more functions and/or operations, it will beunderstood by those within the art that each function and/or operationwithin such block diagrams, flowcharts, or examples can be implemented,individually and/or collectively, by a wide range of hardware, software,firmware, or virtually any combination thereof. In one embodiment,several portions of the subject matter described herein may beimplemented via Application Specific Integrated Circuits (ASICs), FieldProgrammable Gate Arrays (FPGAs), digital signal processors (DSPs), orother integrated formats. However, those skilled in the art willrecognize that some aspects of the embodiments disclosed herein, inwhole or in part, can be equivalently implemented in integratedcircuits, as one or more computer programs running on one or morecomputers (e.g., as one or more programs running on one or more computersystems), as one or more programs running on one or more processors(e.g., as one or more programs running on one or more microprocessors),as firmware, or as virtually any combination thereof, and that designingthe circuitry and/or writing the code for the software and or firmwarewould be well within the skill of one of skill in the art in light ofthis disclosure. In addition, those skilled in the art will appreciatethat the mechanisms of the subject matter described herein are capableof being distributed as a program product in a variety of forms, andthat an illustrative embodiment of the subject matter described hereinapplies regardless of the particular type of signal bearing medium usedto actually carry out the distribution. Examples of a signal bearingmedium include, but are not limited to, the following: a recordable typemedium such as a floppy disk, a hard disk drive, a Compact Disc (CD), aDigital Video Disk (DVD), a digital tape, a computer memory, a RAM, aflash memory, etc.; and a transmission type medium such as a digitaland/or an analog communication medium (e.g., a fiber optic cable, awaveguide, a wired communications link, a wireless communication link,etc.).

In a general sense, those skilled in the art will recognize that thevarious aspects described herein which can be implemented, individuallyand/or collectively, by a wide range of hardware, software, firmware, orany combination thereof can be viewed as being composed of various typesof “electrical circuitry.” Consequently, as used herein “electricalcircuitry” includes, but is not limited to, electrical circuitry havingat least one discrete electrical circuit, electrical circuitry having atleast one integrated circuit, electrical circuitry having at least oneapplication specific integrated circuit, electrical circuitry forming ageneral purpose computing device configured by a computer program (e.g.,a general purpose computer configured by a computer program which atleast partially carries out processes and/or devices described herein,or a microprocessor configured by a computer program which at leastpartially carries out processes and/or devices described herein),electrical circuitry forming a memory device (e.g., forms of randomaccess memory), and/or electrical circuitry forming a communicationsdevice (e.g., a modem, communications switch, or optical-electricalequipment). Those having skill in the art will recognize that thesubject matter described herein may be implemented in an analog ordigital fashion or some combination thereof.

Those skilled in the art will recognize that it is common within the artto describe devices and/or processes in the fashion set forth herein,and thereafter use engineering practices to integrate such describeddevices and/or processes into data processing systems. That is, at leasta portion of the devices and/or processes described herein can beintegrated into a data processing system via a reasonable amount ofexperimentation. Those having skill in the art will recognize that atypical data processing system generally includes one or more of asystem unit housing, a video display device, a memory such as volatileand non-volatile memory, processors such as microprocessors and digitalsignal processors, computational entities such as operating systems,drivers, graphical user interfaces, and applications programs, one ormore interaction devices, such as a touch pad or screen, and/or controlsystems including feedback loops and control motors (e.g., feedback forsensing position and/or velocity; control motors for moving and/oradjusting components and/or quantities). A typical data processingsystem may be implemented utilizing any suitable commercially availablecomponents, such as those typically found in datacomputing/communication and/or network computing/communication systems.

The herein described subject matter sometimes illustrates differentcomponents contained within, or connected with, different othercomponents. It is to be understood that such depicted architectures aremerely exemplary, and that in fact many other architectures can beimplemented which achieve the same functionality. In a conceptual sense,any arrangement of components to achieve the same functionality iseffectively “associated” such that the desired functionality isachieved. Hence, any two components herein combined to achieve aparticular functionality can be seen as “associated with” each othersuch that the desired functionality is achieved, irrespective ofarchitectures or intermediate components. Likewise, any two componentsso associated can also be viewed as being “operably connected,” or“operably coupled,” to each other to achieve the desired functionality.Any two components capable of being so associated can also be viewed asbeing “operably couplable” to each other to achieve the desiredfunctionality. Specific examples of operably couplable include but arenot limited to physically mateable and/or physically interactingcomponents and/or wirelessly interactable and/or wirelessly interactingcomponents and/or logically interacting and/or logically interactablecomponents.

While certain features of the described implementations have beenillustrated as disclosed herein, many modifications, substitutions,changes and equivalents will now occur to those skilled in the art. Itis, therefore, to be understood that the appended claims are intended tocover all such modifications and changes as fall within the true spiritof the embodiments of the invention.

While particular aspects of the present subject matter described hereinhave been shown and described, it will be apparent to those skilled inthe art that, based upon the teachings herein, changes and modificationsmay be made without departing from this subject matter described hereinand its broader aspects and, therefore, the appended claims are toencompass within their scope all such changes and modifications as arewithin the true spirit and scope of this subject matter describedherein. Furthermore, it is to be understood that the invention is solelydefined by the appended claims. It will be understood by those withinthe art that, in general, terms used herein, and especially in theappended claims (e.g., bodies of the appended claims) are generallyintended as “open” terms (e.g., the term “including” should beinterpreted as “including but not limited to,” the term “having” shouldbe interpreted as “having at least,” the term “includes” should beinterpreted as “includes but is not limited to,” etc.). It will befurther understood by those within the art that if a specific number ofan introduced claim recitation is intended, such an intent will beexplicitly recited in the claim, and in the absence of such recitationno such intent is present. For example, as an aid to understanding, thefollowing appended claims may contain usage of the introductory phrases“at least one” and “one or more” to introduce claim recitations.However, the use of such phrases should not be construed to imply thatthe introduction of a claim recitation by the indefinite articles “a” or“an” limits any particular claim containing such introduced claimrecitation to inventions containing only one such recitation, even whenthe same claim includes the introductory phrases “one or more” or “atleast one” and indefinite articles such as “a” or “an” (e.g., “a” and/or“an” should typically be interpreted to mean “at least one” or “one ormore”); the same holds true for the use of definite articles used tointroduce claim recitations. In addition, even if a specific number ofan introduced claim recitation is explicitly recited, those skilled inthe art will recognize that such recitation should typically beinterpreted to mean at least the recited number (e.g., the barerecitation of “two recitations,” without other modifiers, typicallymeans at least two recitations, or two or more recitations).Furthermore, in those instances where a convention analogous to “atleast one of A, B, and C, etc.” is used, in general such a constructionis intended in the sense one having skill in the art would understandthe convention (e.g., “a system having at least one of A, B, and C”would include but not be limited to systems that have A alone, B alone,C alone, A and B together, A and C together, B and C together, and/or A,B, and C together, etc.). In those instances where a conventionanalogous to “at least one of A, B, or C, etc.” is used, in general sucha construction is intended in the sense one having skill in the artwould understand the convention (e.g., “a system having at least one ofA, B, or C” would include but not be limited to systems that have Aalone, B alone, C alone, A and B together, A and C together, B and Ctogether, and/or A, B, and C together, etc.). It will be furtherunderstood by those within the art that any disjunctive word and/orphrase presenting two or more alternative terms, whether in thedescription, claims, or drawings, should be understood to contemplatethe possibilities of including one of the terms, either of the terms, orboth terms. For example, the phrase “A or B” will be understood toinclude the possibilities of “A” or “B” or “A and B.”

1. A method comprising: making a determination that a wireless device isin proximity to at least one secondary wireless device; and determiningan aggregate user interface on the wireless device based on thedetermination.
 2. The method of claim 1 wherein making a determinationthat a wireless device is in proximity to at least one secondarywireless device comprises: making a determination that the wirelessdevice is in proximity to one or more of a plurality of secondarywireless devices.
 3. The method of claim 1 wherein determining anaggregate user interface on the first wireless device based on thedetermination comprises: providing an available interaction with one ormore operations related to the at least one secondary wireless devicebased on the determination.
 4. The method of claim 1 wherein determiningan aggregate user interface on the first wireless device based on thedetermination comprises: providing a menu of operations on the wirelessdevice including at least one operation for one or more of the at leastone secondary wireless device based on the determination. 5-6.(canceled)
 7. The method of claim 1 wherein determining an aggregateuser interface on the wireless device based on the determinationcomprises: receiving information at the wireless device indicating atleast one function of one or more of the at least one secondary wirelessdevice; and providing an aggregate user interface on the wireless deviceindicating the at least one function of one or more of the at least onesecondary wireless device based on the information.
 8. The method ofclaim 1 wherein determining an aggregate user interface on the wirelessdevice based on the determination comprises: determining a state orproperty of an application on the wireless device; and providing anaggregate user interface on the wireless device based on thedetermination and based on the determining a state or property of anapplication on the wireless device. 9-15. (canceled)
 16. The method ofclaim 1 and further comprising: sending a command to one or more of theat least one secondary wireless device via the aggregate user interface.17. (canceled)
 18. The method of claim 16 wherein sending a command toone or more of the at least one secondary wireless device via theaggregate user interface further comprises: using a transceiver to sendthe command.
 19. The method of claim 16 wherein sending a command to oneor more of the at least one secondary wireless device via the aggregateuser interface further comprises: using a personal digital assistant(PDA) to send the command.
 20. The method of claim 16 wherein sending acommand to one or more of the at least one secondary wireless device viathe aggregate user interface further comprises: using a computing devicewith a wireless network connection to send the command. 21-31.(canceled)
 32. The method of claim 1 wherein making a determination thata wireless device is in proximity to at least one secondary wirelessdevice further comprises: making a determination that the wirelessdevice is in proximity to a first secondary wireless device and a secondsecondary wireless device.
 33. The method of claim 32 whereindetermining an aggregate user interface on the wireless device based onthe determination comprises: sending at least one command to the firstand second secondary wireless devices to control the first and secondsecondary wireless devices to perform first and second relatedoperations, respectively.
 34. A computer program product comprising: asignal-bearing medium bearing at least one of (a) one or moreinstructions for making a determination that a wireless device is inproximity to at least one secondary wireless device; and (b) one or moreinstructions for determining an aggregate user interface on the wirelessdevice based on the determination.
 35. The computer program product ofclaim 34, wherein the signal-bearing medium includes a computer-readablemedium.
 36. The computer program product of claim 34, wherein thesignal-bearing medium includes a recordable medium.
 37. The computerprogram product of claim 34, wherein the signal-bearing medium includesa communications medium.
 38. A system comprising: a computing device;and instructions that when executed on the computing device cause thecomputing device to (a) make a determination that a wireless device isin proximity to at least one secondary wireless device, and (b)determine an aggregate user interface on the wireless device based onthe determination.
 39. The system of claim 38 wherein the computingdevice comprises: one or more of a personal digital assistant (PDA), alaptop computer, a tablet personal computer, a networked computer, acomputing system comprised of a cluster of processors, a workstationcomputer, and/or a desktop computer.
 40. A device comprising: (a) awireless device configured to determine when it is in proximity to atleast one secondary wireless device, and (b) an aggregate user interfaceconfigured to be determined on the wireless device.
 41. The device ofclaim 40 wherein aggregate user interface further comprises: anavailable interaction with one or more operations related to the atleast one secondary wireless device.
 42. The device of claim 40 whereinthe aggregate user interface further comprises: a menu of operationsconfigured to be provided to a display on the wireless device includingat least one operation for one or more of the at least one secondarywireless device.
 43. A method comprising: making a determination thatthe wireless device is in proximity to one or more of a plurality ofsecondary wireless devices; providing an aggregate user interface on thewireless device including a menu of operations including at least oneoperation for one or more of the plurality of secondary wireless device;and receiving a selection of at least one operation of the menu ofoperations; sending a command to one or more of the at least onesecondary wireless device via the aggregate user interface according tothe selection of at least one operation.